Hay un servidor Express y un cliente Nuxt. La versión de Nuxt es 2.15.7.
Toda la configuración de autenticación :
// nuxt.config.js auth: { plugins: [ { src: '~/plugins/axios', ssr: true }, { src: '~/plugins/auth' } ], cookie: { prefix: 'auth.', options: { path: '/', secure: process.env.NODE_ENV === 'production' ? true : false } }, localStorage: { prefix: 'auth.' }, vuex: { namespace: 'auth' }, strategies: { local: { scheme: 'refresh', token: { property: 'accessToken', maxAge: 900, global: true, name: 'Authorization', type: 'Bearer' }, refreshToken: { property: 'refreshToken', data: 'refreshToken', maxAge: 5184000 }, user: { property: 'user', autoFetch: false }, endpoints: { login: { url: '/user/sign_in', method: 'post' }, logout: { url: '/user/sign_out', method: 'delete' }, refresh: { url: '/user/refresh', method: 'get' }, user: { url: '/user/profile', method: 'get' } } } }, redirect: { login: '/auth/sign_in', logout: '/', callback: '/auth/sign_in', home: '/' } }Cuando actualizo la página en el navegador, veo esto en el registro del navegador:
Este mensaje viene de aquí:
// plugins/axios.ts import { AxiosRequestConfig } from 'axios' export default function ({ $axios, }: any) { $axios.onRequest((config: AxiosRequestConfig) => { console.log('Making request to ' + config.url) }) }También hay dos solicitudes en los registros del servidor. Pero en la primera solicitud puedo obtener, por ejemplo, cookies, y en la segunda sale esto:
// console.log(req.cookies) [Object: null prototype] {}¿Puede decirme por qué hay dos solicitudes?
El problema fue causado por el back-end que devolvió esto después de iniciar sesión:
{ "is": 1 }Y debería devolver esto:
{ "user": { "is": 1 } }😬
Después de agregar el objeto "usuario", nuxt auth aceptó la información y comenzó a funcionar correctamente.